package pl.grabar.clinic.core.dao;

import pl.grabar.clinic.core.domain.person.User;

/**
 * DAO dla użytkownika systemu.
 * 
 * @author db
 */
public interface UserDao extends Dao<User> {

	/**
	 * Wyszukuje użytkownika na podstawie loginu, hasła oraz kontekstu organizacji. Używana przy autentykacji.
	 *
	 * @param userData częściowe dane użytkownika, wymagane do autentykacji
	 * @return pełne dane użytkownika jeśli zostaną znalezione, w przeciwnym razie null
	 */
	User findByLoginAndPasswordForOrganization(User userData);
	
}
